<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>验证</title>
    <script src="https://v.vaptcha.com/v3.js"></script>
</head>

<body>
    <script>
        var from = "{#$Request.get.from#}";
        vaptcha({
            vid: "{#$global_config.captcha_vaptcha_vid#}", // 验证单元id
            type: "invisible", // 显示类型 隐藏式
            scene: 0, // 场景值 默认0
            offline_server: "", //离线模式服务端地址，若尚未配置离线模式，请填写任意地址即可。
            //可选参数
            //lang: 'auto', // 语言 默认auto,可选值auto,zh-CN,en,zh-TW,jp
            //https: true, // 使用https 默认 true
        }).then(function (vaptchaObj) {
            obj = vaptchaObj; //将VAPTCHA验证实例保存到局部变量中
            //获取token的方式一：
            //vaptchaObj.renderTokenInput('.login-form')//以form的方式提交数据时，使用此函数向表单添加token值
            //获取token的方式二：
            vaptchaObj.listen("pass", function () {
                // 验证成功进行后续操作
                var data = {
                    //表单数据
                    event: 'pass',
                    data: {
                        code: vaptchaObj.getToken(),
                    }
                };
                if (from == 'ios') {
                    window.webkit.messageHandlers.signal.postMessage(JSON.stringify(data));
                } else {
                    vaptchaInterface.signal(JSON.stringify(data))
                }
            });
            //关闭验证弹窗时触发
            vaptchaObj.listen("close", function () {
                //验证弹窗关闭触发
                var data = {
                    //表单数据
                    event: 'close',
                    data: {
                        code: null,
                    }
                };
                if (from == 'ios') {
                    window.webkit.messageHandlers.signal.postMessage(JSON.stringify(data));
                } else {
                    vaptchaInterface.signal(JSON.stringify(data))
                }
            });
            obj.validate();
        });

    </script>
</body>

</html>